package com.teamall.web.tssy.db.arg;

import java.util.ArrayList;
import java.util.List;

import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang.StringUtils;

public class TsSyKeyValueArg {
    private String pk_name = "id";

    private String orderByClause;

    private String groupByClause;

    private String columns;

    private String countsql1;

    private String countsql2;

    private boolean distinct;

    private int rowStart = 0;

    private int rowEnd = 10;

    private List<TsSyKeyValueCriteria> oredCriteria;

    public TsSyKeyValueArg() {
        oredCriteria = new ArrayList<TsSyKeyValueCriteria>();
    }

    public void setPk_name(String pk_name) {
        this.pk_name = StringEscapeUtils.escapeSql(pk_name);
    }

    public String getPk_name() {
        return pk_name;
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = StringEscapeUtils.escapeSql(orderByClause);
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setGroupByClause(String groupByClause) {
        this.groupByClause = StringEscapeUtils.escapeSql(groupByClause);
    }

    public String geGroupByClause() {
        return groupByClause;
    }

    public void setColumns(String columns) {
        this.columns = StringEscapeUtils.escapeSql(columns);
    }

    public String geColumns() {
        return columns;
    }

    public void setCountsql1(String countsql1) {
        this.countsql1 = StringEscapeUtils.escapeSql(countsql1);
    }

    public String geCountsql1() {
        return countsql1;
    }

    public void setCountsql2(String countsql2) {
        this.countsql2 = StringEscapeUtils.escapeSql(countsql2);
    }

    public String geCountsql2() {
        return countsql2;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public void setRowStart(int rowStart) {
        this.rowStart = rowStart;
    }

    public void setRowEnd(int rowEnd) {
        this.rowEnd = rowEnd;
    }

    public int getRowStart() {
        return rowStart;
    }

    public int getRowEnd() {
        return rowEnd;
    }

    public List<TsSyKeyValueCriteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(TsSyKeyValueCriteria criteria) {
        oredCriteria.add(criteria);
    }

    public TsSyKeyValueCriteria or() {
    	TsSyKeyValueCriteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public TsSyKeyValueCriteria createCriteria() {
    	TsSyKeyValueCriteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected TsSyKeyValueCriteria createCriteriaInternal() {
    	TsSyKeyValueCriteria criteria = new TsSyKeyValueCriteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        groupByClause = null;
        columns = null;
        countsql1 = null;
        countsql2 = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<TsSyKeyValueCriterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<TsSyKeyValueCriterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<TsSyKeyValueCriterion> getAllCriteria() {
            return criteria;
        }

        public List<TsSyKeyValueCriterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new TsSyKeyValueCriterion(condition));
        }

        protected void addCriterion(String condition, Object value,
                String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property
                        + " cannot be null");
            }
            criteria.add(new TsSyKeyValueCriterion(condition, value));
        }

        protected void addCriterion(String condition, Object value,
                String property, int likeType) {
            if (value == null) {
                throw new RuntimeException("Value for " + property
                        + " cannot be null");
            }
            criteria.add(new TsSyKeyValueCriterion(condition, value, likeType));
        }

        protected void addCriterion(String condition, Object value1,
                Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property
                        + " cannot be null");
            }
            criteria.add(new TsSyKeyValueCriterion(condition, value1, value2));
        }

        public TsSyKeyValueCriteria andCriterionEqualTo(String criterion) {
            if (StringUtils.isBlank(criterion)) {
                criterion = "1=1";
            }
            addCriterion(criterion);
            return (TsSyKeyValueCriteria) this;
        }
        public TsSyKeyValueCriteria andIdIsNull() {
            addCriterion("id is null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdLike(String value) {
            addCriterion("id like ", value, "id", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdNotLike(String value) {
            addCriterion("id  not like ", value, "id", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdLeftLike(String value) {
            addCriterion("id like ", value, "id", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdNotLeftLike(String value) {
            addCriterion("id  not like ", value, "id", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdRightLike(String value) {
            addCriterion("id like ", value, "id", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdNotRightLike(String value) {
            addCriterion("id  not like ", value, "id", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdIn(List<String> values) {
            addCriterion("id  in ", values, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdNotIn(List<String> values) {
            addCriterion("id not in ", values, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdBetween(String value1, String value2) {
            addCriterion("id between ", value1, value2, "id");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between ", value1, value2, "id");
            return (TsSyKeyValueCriteria) this;
        }
        public TsSyKeyValueCriteria andDictCodeIsNull() {
            addCriterion("dict_code is null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeIsNotNull() {
            addCriterion("dict_code is not null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeEqualTo(String value) {
            addCriterion("dict_code =", value, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeNotEqualTo(String value) {
            addCriterion("dict_code <>", value, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeGreaterThan(String value) {
            addCriterion("dict_code >", value, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeGreaterThanOrEqualTo(String value) {
            addCriterion("dict_code >=", value, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeLessThan(String value) {
            addCriterion("dict_code <", value, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeLessThanOrEqualTo(String value) {
            addCriterion("dict_code <=", value, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeLike(String value) {
            addCriterion("dict_code like ", value, "dict_code", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeNotLike(String value) {
            addCriterion("dict_code  not like ", value, "dict_code", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeLeftLike(String value) {
            addCriterion("dict_code like ", value, "dict_code", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeNotLeftLike(String value) {
            addCriterion("dict_code  not like ", value, "dict_code", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeRightLike(String value) {
            addCriterion("dict_code like ", value, "dict_code", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeNotRightLike(String value) {
            addCriterion("dict_code  not like ", value, "dict_code", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeIn(List<String> values) {
            addCriterion("dict_code  in ", values, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeNotIn(List<String> values) {
            addCriterion("dict_code not in ", values, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeBetween(String value1, String value2) {
            addCriterion("dict_code between ", value1, value2, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictCodeNotBetween(String value1, String value2) {
            addCriterion("dict_code not between ", value1, value2, "dict_code");
            return (TsSyKeyValueCriteria) this;
        }
        public TsSyKeyValueCriteria andDictNameIsNull() {
            addCriterion("dict_name is null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameIsNotNull() {
            addCriterion("dict_name is not null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameEqualTo(String value) {
            addCriterion("dict_name =", value, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameNotEqualTo(String value) {
            addCriterion("dict_name <>", value, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameGreaterThan(String value) {
            addCriterion("dict_name >", value, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameGreaterThanOrEqualTo(String value) {
            addCriterion("dict_name >=", value, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameLessThan(String value) {
            addCriterion("dict_name <", value, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameLessThanOrEqualTo(String value) {
            addCriterion("dict_name <=", value, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameLike(String value) {
            addCriterion("dict_name like ", value, "dict_name", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameNotLike(String value) {
            addCriterion("dict_name  not like ", value, "dict_name", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameLeftLike(String value) {
            addCriterion("dict_name like ", value, "dict_name", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameNotLeftLike(String value) {
            addCriterion("dict_name  not like ", value, "dict_name", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameRightLike(String value) {
            addCriterion("dict_name like ", value, "dict_name", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameNotRightLike(String value) {
            addCriterion("dict_name  not like ", value, "dict_name", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameIn(List<String> values) {
            addCriterion("dict_name  in ", values, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameNotIn(List<String> values) {
            addCriterion("dict_name not in ", values, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameBetween(String value1, String value2) {
            addCriterion("dict_name between ", value1, value2, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictNameNotBetween(String value1, String value2) {
            addCriterion("dict_name not between ", value1, value2, "dict_name");
            return (TsSyKeyValueCriteria) this;
        }
        public TsSyKeyValueCriteria andDictKeyIsNull() {
            addCriterion("dict_key is null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyIsNotNull() {
            addCriterion("dict_key is not null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyEqualTo(String value) {
            addCriterion("dict_key =", value, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyNotEqualTo(String value) {
            addCriterion("dict_key <>", value, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyGreaterThan(String value) {
            addCriterion("dict_key >", value, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyGreaterThanOrEqualTo(String value) {
            addCriterion("dict_key >=", value, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyLessThan(String value) {
            addCriterion("dict_key <", value, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyLessThanOrEqualTo(String value) {
            addCriterion("dict_key <=", value, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyLike(String value) {
            addCriterion("dict_key like ", value, "dict_key", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyNotLike(String value) {
            addCriterion("dict_key  not like ", value, "dict_key", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyLeftLike(String value) {
            addCriterion("dict_key like ", value, "dict_key", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyNotLeftLike(String value) {
            addCriterion("dict_key  not like ", value, "dict_key", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyRightLike(String value) {
            addCriterion("dict_key like ", value, "dict_key", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyNotRightLike(String value) {
            addCriterion("dict_key  not like ", value, "dict_key", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyIn(List<String> values) {
            addCriterion("dict_key  in ", values, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyNotIn(List<String> values) {
            addCriterion("dict_key not in ", values, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyBetween(String value1, String value2) {
            addCriterion("dict_key between ", value1, value2, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictKeyNotBetween(String value1, String value2) {
            addCriterion("dict_key not between ", value1, value2, "dict_key");
            return (TsSyKeyValueCriteria) this;
        }
        public TsSyKeyValueCriteria andDictValueIsNull() {
            addCriterion("dict_value is null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueIsNotNull() {
            addCriterion("dict_value is not null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueEqualTo(String value) {
            addCriterion("dict_value =", value, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueNotEqualTo(String value) {
            addCriterion("dict_value <>", value, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueGreaterThan(String value) {
            addCriterion("dict_value >", value, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueGreaterThanOrEqualTo(String value) {
            addCriterion("dict_value >=", value, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueLessThan(String value) {
            addCriterion("dict_value <", value, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueLessThanOrEqualTo(String value) {
            addCriterion("dict_value <=", value, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueLike(String value) {
            addCriterion("dict_value like ", value, "dict_value", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueNotLike(String value) {
            addCriterion("dict_value  not like ", value, "dict_value", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueLeftLike(String value) {
            addCriterion("dict_value like ", value, "dict_value", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueNotLeftLike(String value) {
            addCriterion("dict_value  not like ", value, "dict_value", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueRightLike(String value) {
            addCriterion("dict_value like ", value, "dict_value", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueNotRightLike(String value) {
            addCriterion("dict_value  not like ", value, "dict_value", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueIn(List<String> values) {
            addCriterion("dict_value  in ", values, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueNotIn(List<String> values) {
            addCriterion("dict_value not in ", values, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueBetween(String value1, String value2) {
            addCriterion("dict_value between ", value1, value2, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andDictValueNotBetween(String value1, String value2) {
            addCriterion("dict_value not between ", value1, value2, "dict_value");
            return (TsSyKeyValueCriteria) this;
        }
        public TsSyKeyValueCriteria andRemarkIsNull() {
            addCriterion("remark is null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkIsNotNull() {
            addCriterion("remark is not null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkEqualTo(String value) {
            addCriterion("remark =", value, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkNotEqualTo(String value) {
            addCriterion("remark <>", value, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkGreaterThan(String value) {
            addCriterion("remark >", value, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("remark >=", value, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkLessThan(String value) {
            addCriterion("remark <", value, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("remark <=", value, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkLike(String value) {
            addCriterion("remark like ", value, "remark", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkNotLike(String value) {
            addCriterion("remark  not like ", value, "remark", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkLeftLike(String value) {
            addCriterion("remark like ", value, "remark", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkNotLeftLike(String value) {
            addCriterion("remark  not like ", value, "remark", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkRightLike(String value) {
            addCriterion("remark like ", value, "remark", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkNotRightLike(String value) {
            addCriterion("remark  not like ", value, "remark", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkIn(List<String> values) {
            addCriterion("remark  in ", values, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkNotIn(List<String> values) {
            addCriterion("remark not in ", values, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkBetween(String value1, String value2) {
            addCriterion("remark between ", value1, value2, "remark");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("remark not between ", value1, value2, "remark");
            return (TsSyKeyValueCriteria) this;
        }
        public TsSyKeyValueCriteria andIsEnableIsNull() {
            addCriterion("is_enable is null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableIsNotNull() {
            addCriterion("is_enable is not null");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableEqualTo(String value) {
            addCriterion("is_enable =", value, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableNotEqualTo(String value) {
            addCriterion("is_enable <>", value, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableGreaterThan(String value) {
            addCriterion("is_enable >", value, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableGreaterThanOrEqualTo(String value) {
            addCriterion("is_enable >=", value, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableLessThan(String value) {
            addCriterion("is_enable <", value, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableLessThanOrEqualTo(String value) {
            addCriterion("is_enable <=", value, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableLike(String value) {
            addCriterion("is_enable like ", value, "is_enable", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableNotLike(String value) {
            addCriterion("is_enable  not like ", value, "is_enable", 1);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableLeftLike(String value) {
            addCriterion("is_enable like ", value, "is_enable", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableNotLeftLike(String value) {
            addCriterion("is_enable  not like ", value, "is_enable", 0);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableRightLike(String value) {
            addCriterion("is_enable like ", value, "is_enable", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableNotRightLike(String value) {
            addCriterion("is_enable  not like ", value, "is_enable", 2);
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableIn(List<String> values) {
            addCriterion("is_enable  in ", values, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableNotIn(List<String> values) {
            addCriterion("is_enable not in ", values, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableBetween(String value1, String value2) {
            addCriterion("is_enable between ", value1, value2, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

        public TsSyKeyValueCriteria andIsEnableNotBetween(String value1, String value2) {
            addCriterion("is_enable not between ", value1, value2, "is_enable");
            return (TsSyKeyValueCriteria) this;
        }

    }

    public static class TsSyKeyValueCriteria extends GeneratedCriteria {

        protected TsSyKeyValueCriteria() {
            super();
        }
    }

    public static class TsSyKeyValueCriterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected TsSyKeyValueCriterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }
        protected TsSyKeyValueCriterion(String condition, Object value, int likeType) {
            this.condition = condition;
            if (likeType == 0) {
                this.value = "%" + value;
            }
            else if (likeType == 1) {
                this.value = "%" + value + "%";
            }
            else {
                this.value = value + "%";
            }
            this.typeHandler = null;
            this.singleValue = true;

        }

        protected TsSyKeyValueCriterion(String condition, Object value,
                String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            }
            else {
                this.singleValue = true;
            }
        }

        protected TsSyKeyValueCriterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected TsSyKeyValueCriterion(String condition, Object value,
                Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected TsSyKeyValueCriterion(String condition, Object value,
                Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}